package com.hex.ds.hdtp.core.inf.script.analyze.repository;

import com.hex.ds.hdtp.core.inf.common.page.Page;
import com.hex.ds.hdtp.core.inf.common.repository.IBasicRepository;
import com.hex.ds.hdtp.core.inf.script.analyze.po.ScriptAnalyzeTaskPo;

/**
 * @Package com.hex.ds.hdtp.core.inf.script.analyze.repository
 * @ClassName IScriptAnalyzeTaskRepository
 * @Description 脚本分析任务-数据服务接口
 * @Author gj.xu
 * @Date 2023/12/7 15:27
 * @Version v2.0
 **/
public interface IScriptAnalyzeTaskRepository extends IBasicRepository<ScriptAnalyzeTaskPo> {

    /**
     * 分页查询
     *
     * @param scriptAnalyzeTaskPo
     * @param page
     * @return
     */
    Page<ScriptAnalyzeTaskPo> queryListByPage(ScriptAnalyzeTaskPo scriptAnalyzeTaskPo, Page page);

    /**
     * 更新分析总数
     *
     * @param pkId
     * @param total
     */
    void modifyTotal(String pkId, Integer total);

    /**
     * 更新成功数量
     *
     * @param pkId
     */
    void modifySuccessCount(String pkId);

    /**
     * 更新失败数量
     *
     * @param pkId
     */
    void modifyFailCount(String pkId);

    /**
     * 更新状态
     *
     * @param pkId
     */
    void modifyStatus(String pkId);

    /**
     * 更新启动任务时状态、成功失败数、开始时间
     *
     * @param pkId
     * @param status
     * @return
     */
    Integer modifyStartTsById(String pkId, String status);

}
